﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DataCodeDemo.CamDrives
{
    //
    // 摘要:
    //     帧信息
    public struct FrameInfo
    {
        //
        // 摘要:
        //     格式
        [Description("格式")]
        public zwxImageFormat format;
        //
        // 摘要:
        //     内部信息
        [Description("内部信息")]
        public uint internalValue;
        //
        // 摘要:
        //     内部标志位
        [Description("内部标志位")]
        public uint internalFlags;
        //
        // 摘要:
        //     是否逆时针旋转【注：将byte修改为bool类型，byte转bool可使用 Convert.ToBoolean()方法，2020/09/23】
        [Description("是否逆时针旋转")]
        public bool bRotateOpposite;
        //
        // 摘要:
        //     是否旋转90度【注：将byte修改为bool类型，byte转bool可使用 Convert.ToBoolean()方法，2020/09/23】
        [Description("是否旋转90度")]
        public bool bRotateState;
        //
        // 摘要:
        //     是否垂直翻转【注：将byte修改为bool类型，byte转bool可使用 Convert.ToBoolean()方法，2020/09/23】
        [Description("是否垂直翻转")]
        public bool bFlipVerticalState;
        //
        // 摘要:
        //     是否水平翻转【注：将byte修改为bool类型，byte转bool可使用 Convert.ToBoolean()方法，2020/09/23】
        [Description("是否水平翻转")]
        public bool bFlipHorizontalState;

        //
        // 摘要:
        //     模拟增益
        [Description("模拟增益")]
        public float fAGain;
        //
        // 摘要:
        //     曝光时间（微秒）
        [Description("曝光时间（微秒）")]
        public double fExposure;
        //
        // 摘要:
        //     时间戳
        [Description("时间戳")]
        public ulong uTimestamp;
        //
        // 摘要:
        //     帧编号
        [Description("帧编号")]
        public ulong uFrameID;
        //
        // 摘要:
        //     高度
        [Description("高度")]
        public int iHeight;
        //
        // 摘要:
        //     宽度
        [Description("宽度")]
        public int iWidth;
        //
        // 摘要:
        //     字节数
        [Description("字节数")]
        public uint uBytes;
        //
        // 摘要:
        //     每次触发所对应的一帧或多帧的触发ID
        [Description("是否逆时针旋转")]
        public ulong uTriggerId;
        //
        // 摘要:
        //     保留字节
        [Description("保留字节")]
        public uint[] reserved;
    }
}
